$(function() {
    $.jgrid.defaults.styleUI = 'Bootstrap';
    $("#loading").hide();
    $( "#datepicker" ).datepicker();
    initlaydate();
    //初始化表格
    getCloum();
    //查询
    $("#query").click(function(){

        getCloum();
    });

    //取消
    $("#exit").click(function(){
        changedialogHidden();
    });

    //提交
    $("#submit").click(function(){
        sumit();
    });

    //导出
    $("#exportexel").click(function(){
        downExcelfile();
    });


});


//添加弹出框
function changedialogshow(param){
    $("#dataparam").val(param['dataparam']);
    $("#userId").val(param['userId']);
    $("#date").val(param['date']);
    $("#isType").val(param['isType']);
    $("#changedialog").show(speed="slow");
}

function changedialogHidden(){
    $("#changedialog").hide(speed="slow");
}

function sumit() {
    console.log($("#salesmanagementadd").serialize());

    $.ajax({
        url: "/addSalesManagerment",
        type: "POST",
        data: $("#salesmanagementadd").serialize(),
        success: function(data){
            if(data == 1){
                successalert("" , "改完成");
                $("#table_list_2").trigger("reloadGrid");
                changedialogHidden();
            }else{
                errorsalert("" , "出现错误，请重试");
            }

        },
        error: function(){
            errorsalert("" , "出现错误，请重试");
        }
    });
}

//导出
function downExcelfile() {
    /**
     * JQuery的ajax函数的返回类型只有xml、text、json、html等类型，没有“流”类型，所以我们要实现ajax下载，不能够使用相应的ajax函数进行文件下载。但可以用js生成一个form，用这个form提交参数，并返回“流”类型的数据。
     */
    var form = $("<form>"); //定义一个form表单
    form.attr("style", "display:none");
    form.attr("target", "");
    form.attr("method", "get");
    form.attr("action", "/downsalesgexcel");
    var input1 = $("<input>");
    input1.attr("type", "hidden");
    input1.attr("name", "dept");
    input1.attr("value", $("#dept").val());
    var input2 = $("<input>");
    input2.attr("type", "hidden");
    input2.attr("name", "starttime");
    input2.attr("value", $("#starttime").val() );
    $("body").append(form); //将表单放置在web中
    form.append(input1);
    form.append(input2);
    form.submit(); //表单提交
}

//删除
function deletesales(id) {
    var paramData = $("#table_list_2").jqGrid("getRowData",id)
    var jsondata = {
        "userId" : paramData['userId'],
        "date":paramData['date']
    };
    $.ajax({
        url: "/deletesales",
        type: "POST",
        data: jsondata,
        success: function(data , stutas){
            console.log(data);
            /*if(data > 1){*/
                $("#table_list_2").trigger("reloadGrid");
                successalert("" , "删除用户完成");
           /* }else{
                errorsalert("" , "删除用户失败");
            }*/
        },
        error: function(){
            errorsalert("" , "出现错误，请重试");
        }
    });
};

function initlaydate() {

    //日期范围限制
    var start = {
        elem : '#starttime',
        format : 'YYYY-MM',
        istime : true,
        istoday : false,
        type: 'month'
    };
    laydate(start);
    var d = new Date();
    var year = d.getFullYear();

    var month = (d.getMonth() + 1) >=10? (d.getMonth() + 1) : "0" + (d.getMonth() + 1);

    var date = d.getDate() >=10 ? d.getDate() : "0" + d.getDate();

    var tempDate = year + "-" + month;
    $('#starttime').val(laydate.now( tempDate,'YYYY-MM'));

}

function getCloum() {
    $.ajax({
        url:"/getCloums",
        type:"POST",
        data:{
            "param":$("#starttime").val()
        },
        beforeSend:function(){

        },
        success:function(data){
            console.log(data);
            for(var i=0;i< data.data.cloumList.length;i++){
                debugger
                console.log(data.data.cloumList[i]);
                data.data.cloumList[i]['cellattr'] =function(rowId, value, rowObject, colModel, arrData) {
                    return 'id=\'userName' + rowId + "\'";//①给当前想合并的单元格设置id
                }
             }
            buildgrid(data);
        },
        error:function(){
            console.log("error");
        },
        complete:function(){
            $("#loading").hide();
        }
    });
}

/**
 * 表格列表
 * @param data
 */
function buildgrid(data){
    $("#jqGrid_wrapper").html("");
    $("#jqGrid_wrapper").append("<table id=\"table_list_2\"></table>");
    $("#jqGrid_wrapper").append("<div id=\"pager_list_2\"></div>");
    $("#table_list_2").jqGrid(
        {
            url : "/salesManagementlist",
            datatype: "json",
            mtype: "POST",
            height: "100%",
            postData:{
                dept:$("#dept").val(),
                starttime:$("#starttime").val()
            },
            autowidth: true,
            shrinkToFit:false,
            autoScroll: true,
            //rownumbers : true,
            jsonReader: {
                root:"dataList",
                page:"currentPage",
                total:"totalPage",          //   很重要 定义了 后台分页参数的名字。
                records:"totalCount"
            },
            rowNum: 16,
            rowList: [16, 32, 48],
            colNames: data.data.cloumNmae,
            colModel: data.data.cloumList,
            pager: "#pager_list_2",
            viewrecords: true,
            cellEdit:false,
            onCellSelect:function(rowid,iCol, cellcontent,e){
                //不是某一天的不处理
                if(iCol<6){
                    return;
                }

                //第几天的数据
                var data = 0;
                if((iCol-5)<10){
                    data = "0"+(iCol-5);
                }else{
                    data = iCol-5;
                }
                //这个是当前框的值
                var value = cellcontent;
                var rowData = $("#table_list_2").jqGrid("getRowData",rowid);
                var param = {
                    userId:rowData['userId'],
                    dataparam: value,
                    date:rowData['date']+"-"+data,
                    isType:rowData['isType']
                };
                changedialogshow(param);
                console.log("onCellSelect=============");
            },
            add: false,
            edit: false,
            hidegrid: false ,
            gridComplete: function(){
                console.log("grid Complete");
                var ids = $("#table_list_2").jqGrid("getDataIDs");
                for (var int = 0; int < ids.length; int++) {
                    var id = ids[int];
                    console.log("ff" + id);


                    var del = "<a href='#'  style='color:#f60' onclick='deletesales(" + id + ")' >删除</a>";
                    var result = $("#table_list_2").jqGrid("setRowData", id, {handle:del });
                }
                //MergerRowspan("table_list_2", 'userName');
                Merger("table_list_2", 'userName');
            }
        });
    $("#table_list_2").jqGrid('setGroupHeaders', {
        useColSpanStyle: true,
        groupHeaders:[
            {startColumnName:'userName', numberOfColumns:data.data.sumDay+7, titleText: data.data.month+'月份电销'},
        ]
    });
    $("#table_list_2").jqGrid("setGroupHeaders",{
        useColSpanStyle: true,
        groupHeaders:[
            {startColumnName:'day1',numberOfColumns:data.data.sumDay+4,titleText:'时间'},
        ]
    });
    $("#table_list_2").closest(".ui-jqgrid-bdiv").css({"overflow-x":"scroll"});
    // Setup buttons
    $("#table_list_2").jqGrid('navGrid', '#pager_list_2', {
        edit: false,
        add: false,
        del: false,
        search: false
    }, {
        height: 300,
        reloadAfterSubmit: true
    });


    $(window).bind('resize', function () {
        var width = $('.jqGrid_wrapper').width();
        $('#table_list_2').setGridWidth(width);
    });

    //公共调用方法
    function Merger(gridName, CellName) {
        //得到显示到界面的id集合
        var mya = $("#" + gridName + "").getDataIDs();
        //console.log(mya);
        //当前显示多少条
        var length = mya.length;
        for (var i = 0; i < length; i++) {
            //从上到下获取一条信息
            var before = $("#" + gridName + "").jqGrid('getRowData', mya[i]);
            //定义合并行数
            var rowSpanTaxCount = 1;
            for (j = i + 1; j <= length; j++) {
                //和上边的信息对比 如果值一样就合并行数+1 然后设置rowspan 让当前单元格隐藏
                var end = $("#" + gridName + "").jqGrid('getRowData', mya[j]);
                if (before[CellName] == end[CellName]) {
                    rowSpanTaxCount++;
                    $("#" + gridName + "").setCell(mya[j], CellName, '', {display: 'none'});
                } else {
                    rowSpanTaxCount = 1;
                    break;
                }
                $("#" + CellName + "" + mya[i] + "").attr("rowspan", rowSpanTaxCount);
            }
        }
    }

    //保存数据
    function  saveSalesManagement(param){
        $.ajax({
            url:"/addSalesManagerment",
            type:"POST",
            beforeSend:function(){

            },
            success:function(data){
                $("#table_list_2").trigger("reloadGrid");
                successalert("提示" , "保存成功!");
            },
            error:function(){
                console.log("error");
            },
            complete:function(){
               // $("#loading").hide();
            }
        });
    }


}

